Content viewability based on user interaction in a flip-based digital magazine environment

ABSTRACT

A digital magazine presents content items based on user interaction with or preference for content items determined based on how a user flips through different content items of the digital magazine. For example, the user may slow down or pause flipping, flip through content items at an inconsistent pace or change the navigational direction of the flipping, when the user is encountered with content items of interest. By analyzing how a user flips through different content items, content items that the user interacts with can be determined, and content items that the user may interact with or prefer can be determined and presented to the user.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional Application No.62/323,457, entitled “Serving Ads Based on User Interaction In AFlip-Based Digital Magazine Environment,” filed Apr. 15, 2016, which isincorporated by reference herein in its entirety.

BACKGROUND

This disclosure relates generally to digital magazines, and moreparticularly to determining viewability based on user interaction withany type of advertisement or sponsored content in a flip-based digitalmagazine environment.

Digital distribution channels disseminate a wide variety of digitalcontent including text, images, audio, links, videos, and interactivemedia (e.g., games, collaborative content) to users. Recent developmentof mobile computing devices such as personal computers, smart phones,tablets, etc., enables users to access numerous content items in variousforms, and provide feedback for the content items.

Among various content items, advertisements or sponsored content itemsmay be presented through mobile computing devices. To ensure that usershave the opportunity to see the advertisements, viewability standardsare employed. Viewability of a content item is an indication of whetherthe content item is deemed viewable. In one example approach ofdetermining viewability, a duration of the advertisement in-view ismeasured. For example, an advertisement presented over a threshold time(e.g., 1 second) may be deemed viewed by the user.

However, determining viewability based on the time measurement alonecauses content items to be presented in an unpleasing manner. Inparticular, advertisements preventing a user control may be presentedfor a predetermined time or a pop up window may be generated in front ofa news article the user intends to consume in order to satisfyviewability standards based on time measurement. Such advertisementsdepriving a user control for a certain amount of time to meetviewability standards degrade user experience.

SUMMARY

A computer-implemented method is disclosed for determining viewabilityof content items in a digital magazine. The method includes obtaininginformation describing attributes of a user flipping a page of thedigital magazine including one or more content items. According to theattributes of the user flipping a page of the digital magazine, aviewability of a content item is determined.

In one embodiment, a user interaction with a content item is determinedbased on attributes of flipping of a page including the content item.Examples of attributes of flipping include timing of flips, an intervalbetween flips, a direction of a flip, etc. The user interactionindicates a degree of engagement of the user with the content item.Examples of the user interaction include “backward navigation,”“inconsistent pace of flipping,” “active slowdown or pausing of flips,”“extended first half of page flip time” etc. Based on the attributes offlipping a page, intentional user interaction with the content item canbe determined. Moreover, a viewability (e.g., an indication of whetherthe content item is viewable) can be determined based on the determineduser interaction.

The features and advantages described in the specification are not allinclusive and, in particular, many additional features and advantageswill be apparent to one of ordinary skill in the art in view of thedrawings, specification, and claims. Moreover, it should be noted thatthe language used in the specification has been principally selected forreadability and instructional purposes, and may not have been selectedto delineate or circumscribe the disclosed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system environment in which a contentprocessing system operates, in accordance with an embodiment.

FIG. 2 is an example of a page template for presenting content using adigital magazine, in accordance with an embodiment.

FIG. 3A is an example flip transition animation from one page toanother, when it is uncertain that either the user interacted with thecontent or the user is presented with a preferred content item inaccordance with an embodiment.

FIG. 3B is an example flip transition animation from one page to anotherwith extended time to flip, when the user interacts with or is presentedwith a preferred content item in accordance with an embodiment.

FIG. 3C is an example flip transition animation from one page to anotherwith extended time to pause, when the user is presented with aninteresting content item in accordance with an embodiment.

FIG. 3D is an example flip transition animation from one page to anotherpage with slowdown in flipping while half or more than half of thecontent item is still in-view.

FIGS. 4A through 4G illustrate an example flip transition animationsequence from one page to another page.

FIG. 5 is a block diagram of an example diagram of a content processingsystem in accordance with an embodiment.

FIG. 6 is a block diagram of an example diagram of a client device inaccordance with an embodiment.

FIG. 7 is an example flow chart of determining attributes of a flip inaccordance with an embodiment.

FIG. 8 is an example flow chart of determining a user interaction basedon the attributes of the flip.

The figures depict various embodiments of the present invention forpurposes of illustration only. One skilled in the art will readilyrecognize from the following discussion that alternative embodiments ofthe structures and methods illustrated herein may be employed withoutdeparting from the principles of the invention described herein.

DETAILED DESCRIPTION

Overview

In one or more embodiments, content items are presented in a digitalmagazine according to a user preference of content items or topicsdetermined based on how a user flips through different content items ofthe digital magazine. By analyzing how a user flips through a contentitem, a preference for or interest in the content item can be specified.For example, a user may flip through content items in a direction at arelatively consistent pace such that the time to flip is the same as thetime in between flips. When pacing is consistent, it is uncertain thatthe user interacts with content items. However, the user may slow downor pause between flips, flip through content items at an inconsistentpace, navigate in a different direction, or slow down or pause duringthe subsequent flip in order to extend the time a content item isin-view, when the user is encountered with preferred or interestingcontent items. Moreover, content items that may be preferred by the usercan be predicted based on user interactions with similar content itemsor content items associated with similar meta tags that describe thecontent item (e.g., format, topic etc.), and the predicted content itemscan be presented to the user. In addition, a content provider of thecontent item can determine viewability of the content item based on userinteraction with that content item. Viewability of a content item isherein referred to an indication of whether the content item is deemedviewable. In one embodiment, a content item is considered viewable if auser intentionally interacts with the content item, regardless of theamount of time the content item is in-view. By analyzing how a userflips through a content item, intentional user interaction with thecontent item can be determined. For example, a user may flip throughcontent items in a direction at a relatively consistent pace such thatthe time to flip is the same as the time in between flips. When suchpacing is consistent, it is uncertain whether the user intentionallyinteracted with the content item. However, the user demonstratesintentional interaction with content item when the user slows down orpauses in between flips, flips through content items at an inconsistentpace, navigates in a different direction or slows down or pauses thefirst half of the next flip in order to extend the time a content itemis in-view. Moreover, content items that the user may interact with canbe predicted based on intentional user interactions with similar contentitems or content items associated with similar meta tags that describethe content item (e.g., format, topic etc.), and the predicted contentitems can be presented to the user. User preference for, interest in andinteraction with the content item depends on how the user flips throughcontent items in a digital magazine as described below in detail withrespect to FIGS. 3 through 8.

System Architecture

FIG. 1 is a block diagram of an embodiment of a system environment 100for organizing and sharing content via a digital magazine. In theexample shown by FIG. 1, the system environment includes one or morecontent source devices 102, a client device 104, and a contentprocessing system 106 connected to each other via a network 108. Asource device 102 is a computing system capable of providing varioustypes of content to a client device 104. Examples of content provided bya source device 102 include text, images, video, or audio on web pages,web feeds, social networking information, messages, or other suitabledata. Additional examples of content include user-generated content suchas blogs, tweets, shared images, video or audio, social networkingposts, social networking status updates, and advertisements. Contentprovided by a source device 102 may be received from a publisher (e.g.,stories about news events, product information, entertainment,educational material, etc.) and distributed by the source device 102.Content provided by a source device 102 may also be received from anadvertiser (e.g., advertisements, sponsored content etc.) anddistributed by the source device 102. For convenience, content,regardless of its composition, may be referred to herein as an“article,” a “content item,” or as “content.” A content item may includevarious types of content, such as text, images, and video or contentelements including headlines, top copy, and body text.

In one or more embodiments, the content processing system 106 is adigital magazine server that receives content items from one or moresource devices 102, generates pages in a digital magazine by processingthe received content items, and serves the pages to a client device 104.Example embodiments of a content processing system 106 are described inU.S. patent application Ser. No. 13/187,840, filed on Jul. 21, 2011,which is hereby incorporated by reference in its entirety.

The client device 104 is a computing device capable of receiving userinput as well as transmitting and/or receiving data via the network 108.In one embodiment, the client device 104 is a conventional computersystem, such as a desktop or a laptop computer. Alternatively, theclient device 104 may be a device having computer functionality, such asa personal digital assistant (PDA), a mobile telephone, a smartphone,smartwatch, or another electronic device. In one embodiment, a clientdevice 104 executes an application, such as a digital magazineapplication, that receives one or more pages generated by the contentprocessing system 106 and presents the pages to a user of the clientdevice 104. Additionally, an application executing on the client device104 may communicate instructions or requests for content to the contentprocessing system 106 to modify content presented to a user of theclient device 104. As another example, the client device 104 executes abrowser that receives pages from the content processing system 106 andpresents the pages to a user of the client device 104. While FIG. 1shows a single client device 104, in various embodiments, any number ofclient devices 104 may communicate with the content processing system106.

Hence, the content processing system 106 obtains content items frommultiple sources and generates one or more pages for presentation to theuser that include the obtained content items in a suitable format. Forexample, the content processing system 106 determines a page layoutincluding various content items based on information associated with auser and generates a page including the content items arranged accordingto the determined layout for presentation to the user via a clientdevice 104. This allows the user to access content items via the clientdevice 104 in a format that enhances the user's interaction andconsumption of the content items. Accordingly, a user may achieve areading experience of various content items from multiple source devices102 via the client device 104 that replicates the experience of readingthe content items via a print magazine. For example, a page generated bythe content processing system 106 may present various content items in alayout that reduces horizontal or vertical scrolling by the user toaccess various content items presented on the page.

The source devices 102, client device 104, and the content processingsystem 106 are configured to communicate via the network 108, which maycomprise any combination of local area and/or wide area networks, usingboth wired and/or wireless communication systems. In one embodiment, thenetwork 108 uses standard communications technologies and/or protocols.For example, the network 108 includes communication links usingtechnologies such as Ethernet, 802.11, worldwide interoperability formicrowave access (WiMAX), 3G, 4G, code division multiple access (CDMA),digital subscriber line (DSL), etc. Examples of networking protocolsused for communicating via the network 108 include multiprotocol labelswitching (MPLS), transmission control protocol/Internet protocol(TCP/IP), hypertext transport protocol (HTTP), simple mail transferprotocol (SMTP), and file transfer protocol (FTP). Data exchanged overthe network 108 may be represented using any suitable format, such ashypertext markup language (HTML) or extensible markup language (XML). Insome embodiments, all or some of the communication links of the network108 may be encrypted using any suitable technique or techniques.

Page Templates

A page template is used by the content processing system 106 to describea spatial arrangement (“layout”) of content items on a page forpresentation by a client device 104. A page template includes slots,which each include one or more content items. Each slot has a size(e.g., small, medium, or large) and an aspect ratio. Examples of pagetemplates are described in U.S. patent application Ser. No. 13/187,840,filed on Jul. 21, 2011, which is hereby incorporated by reference in itsentirety.

FIG. 2 illustrates an example page template 202 having multiplerectangular slots each configured to include a content item. Other pagetemplates with different configurations of slots may be used by thecontent processing system 106 to present one or more content itemsreceived from source devices 102. In some implementations, a pagetemplate may reserve one or more slots for specific types of contentitems having specific characteristics. For example, one or more slots ina page template are reserved for content items that are images. Asanother example, a page template may include a slot reserved forpresentation of social network status updates, and the status updatesmay be grouped and displayed as a list in the slot included in the pagetemplate. In another example, one or more slots in a page template maybe associated with content items received from a specific source device102 or provided by a specific publisher (e.g., a specified newsorganization, a specified magazine magazines, content generated by aspecified user, etc.) or by a specific advertiser (e.g., advertisements,sponsored content etc.).

As shown in FIG. 2, when a content processing system 106 generates apage, the content processing system 106 populates slots in a pagetemplate 202 with content items. Information identifying the pagetemplate 202 and the associations between content items and slots in thepage template 202 is stored and used to generate the page. For example,the identified page template 202 and content items are retrieved, andthe page is generated by including content items in slots of the pagetemplate 202 based on the associations. As used herein, a slot in whicha content item is presented may be referred to as a “content region.”

A content region 204 may include image data, text, data, a combinationof image and text data, or any other information retrieved from acorresponding content item. For example, content region 204A representsa table of contents identifying sections of a digital magazine that arerepresented by content regions 204B-204H. For example, content region204A includes text or other data identifying a table of contents, suchthe text “Cover Stories featuring,” followed by one or more identifiersassociated with various sections of the digital magazine. An identifierassociated with a section may describe a characteristic common to atleast a threshold number of content items in the section. For example,an identifier refers to the name of a user of social network from whichcontent items included in the section is received, such as a user towhich a user associated with client device 104 has formed a connection,association, or relationship via a social networking system. As anotherexample, an identifier associated with a section specifies a topic, anewspaper, a magazine, a blog author, or other publisher associated withat least a threshold number of content items in the section.Additionally, an identifier associated with a section may furtherspecify content items selected by a user of the content processingsystem 106 and organized as a section. Content items included in asection may be related topically and include text and/or images relatedto the topic.

Sections may be further organized into subsections, with each subsectionalso represented by a content region describing one or more contentitems included in the subsection. Referring to FIG. 2, section contentregion 204H may include a newspaper including three subsectionsrepresented by subsections 208, 210, and 212. Accessing section contentregion 204H presents an additional page 206 generated from a pagetemplate used by the newspaper to present the subsections 208, 210, and212 in various slots. The subsections 208, 210, 212 may include contentitems grouped based on their associated topics, based on theirassociated authors, or based on any other suitable associatedinformation. Further, a subsection may include one or more subsections,allowing the digital magazine to provide content items in a hierarchicalstructure.

Serving Content Based on User Interaction in a Flip-Based Environment

Embodiments of the digital magazine described herein may simulate thelook and feel of reading a print magazine, while also providing benefitsof digital media that cannot be achieved in print media. For example,when a user turns a page in the digital magazine, an animationsimulating turning the page of a print magazine may be presented toprovide a visual cue that the page has been turned or in the process ofbeing turned. In certain situations, the digital magazine may simulatethe turning of multiple pages. For example, if the user is reading anarticle that is several pages into a section and wants to return to thebeginning of the section, simulating the turning of multipleintermediate pages may be desirable to provide the user with visualfeedback about the result of the navigation. Similarly, if the useraccesses a particular section from a table of contents, simulating theturning of multiple pages may provide the user with a useful visual cue.

To provide visual feedback to a user navigating through pages of adigital magazine, a digital magazine application executing on a clientdevice 104 may present a user with animations or other effectssimulating the turning of multiple pages when the user navigates throughpages of the digital magazine. The pages presented by the animationssimulating page turning may be blank or may include content. Forexample, when accessing the cover page of a section the user iscurrently reading, the digital magazine application may render recentlyviewed pages as one or more intermediate pages before displaying thecover page. This indicates to the user that pages are between thecurrent page and the cover page and are being traversed until the coverpage is reached. Examples of flipping through pages in a digitalmagazine are further described in U.S. patent application Ser. No.13/284,678, filed on Oct. 28, 2011, which is hereby incorporated byreference in its entirety.

A flip is a navigation tool that allows users to seamlessly move fromone screen in a mobile web browser or mobile application. This istypically done with an upward/downward, sideways or diagonal motion(with a user's thumb or fingers) on a touch display device of amobile/tablet device, smartwatch or other electronic devices.

A flip can be used to determine user interaction with the content item.Specifically, by tracking how a user flips through pages, theinteraction of the user in response to content items included in thedisplayed pages can be determined. In one instance, viewability of thecontent item can be determined based on intentional user interactionwith the content item. In another instance, user preference fordifferent content items or topics can be determined according to theuser interactions. Moreover, future presentation of content items can bedetermined according to the user interaction or preference. Trackingcertain attributes of flips can help determine user interactions inresponse to content items presented. Examples of certain attributesinclude timing of flips, an interval between flips, a change in thenavigational direction of a flip, a difference in the time between thefirst and second halves of a flip etc. Detailed description of a flipnavigation and determining the user preference is described below withrespect to FIGS. 3A-3D and 4A-4G.

FIGS. 3A-3D illustrate a difference in timings of flip and/or aninterval between flips depending on the user interaction with contentitems or user preference. FIG. 3A is an example flip transitionanimation from one page to another, when it is uncertain that either theuser interacted with the content or the user is presented with apreferred content item in accordance with an embodiment. FIG. 3B is anexample flip transition animation from one page to another with extendedtime to flip, when the user interacts with a content item or the user ispresented with a preferred content item in accordance with anembodiment. FIG. 3C is an example flip transition animation from onepage to another with extended time to pause, when the user interactswith a content item or the user is presented with a preferred contentitem in accordance with an embodiment. FIG. 3D is an example fliptransition animation from one page to another page with slowdown inflipping while half or more than half of the content item is stillin-view.

According to a user gesture (e.g., sliding a bottom of a touch displaydevice to a top of the touch display device), an animation of flippingthrough different pages may be displayed. In the example shown in FIG.3A, the transition animation begins with page 1 and ends with page 2,then a subsequent transition animation begins with page 2 and ends withpage 3 as illustrated by a generic layer 310. A sequence of animation offlipping is shown in a top view layer 320 and a side view layer 330.

FIGS. 4A-G illustrate a flip transition animation sequence from one pageto another page in accordance with an embodiment. Pages shown in FIGS.4A-4G may correspond to pages in the top view layer 320 in FIGS. 3A-3D.FIGS. 4A-G show flip axis 410 and pages 420 and 430 to the extent anysuch portions thereof are visible. Page 420 has halves 422 and 424, andpage 430 has halves 432 and 434. The appropriate halves are showndepending on the time slice of the animation sequence. The fliptransition animation is a bottom to top vertical flip.

FIG. 4A shows a full view of page 420. FIG. 4B shows half 424 liftingoff to reveal half 434. FIG. 4C shows half 424 further along in itsflight path to the top half, but not yet having crossed flip axis 410.FIG. 4D shows half 424 at the halfway point in its flight path, fullyrevealing half 434. Any progression of half 424 beyond flip axis 410results in having half 432 shown instead of half 424, as indicated byFIG. 4E. FIG. 4F 20 shows how yet further progression of half 424 (notshown) covers more of half 422 and reveals more of half 432. FIG. 4Gshows a full view of page 430.

Returning back to FIG. 3A, the user may slide a touch display with afinger, for example, from a bottom half of the touch display to a tophalf of the touch display for a time period Ft (i.e., time to flip).Time to flip Ft herein is referred to a time period during which theuser navigates from one page to another through a flip. During theslide, a user's finger may be in contact with the touch display, and acorresponding page of the transition animation is displayed according toa position of the user's finger. Once the flip is complete and thecontent item is fully displayed on the page, the user's finger mayremain paused and in contact with the display for a time period Pt(i.e., time to pause). Time to pause Pt is herein referred to a timeperiod during which the user pauses to view content items after the flipis completed while the user's finger remains in contact with the displayand before the user starts retracting the finger for the next flip. Thetime to pause Pt may be measured directly based on the time in which afinger stops flipping the page and the time the finger is no longer incontact with the screen. After time to flip Ft and time to pause Pt, theuser may lift his/her finger from the touch display, and retract thefinger, for example, back to the bottom of the touch display device fora time period Rt (i.e., time to retract) to initiate flipping of page 2.Time to retract Rt herein is referred to a time period during which theuser retracts a finger back into a position to initiate a next flip. Byrepeating the sequence of flipping, pausing, and retracting as shown inFIG. 3A, the user can navigate through different pages.

When a user intentionally interacts with content items or is presentedwith preferred content items, time consumed for flipping will be lessthan a time interval between flips. For example in FIG. 3B, the userinteracting with or encountering preferred content items slows down apace of flipping such that the time to flip Ft′ increases compared thetime to flip Ft when it is uncertain the user is intentionallyinteracting with preferred content items in FIG. 3A. For another examplein FIG. 3C, the user pauses for a time period Pt (i.e., time to pause)or slows down the time to retract Rt, after the flipping is completedsuch that the sum of Pt and Rt is greater than Ft (i.e., Pt+Rt>Ft). Foranother example in FIG. 3D, the user slows down or pauses the time toflip the first half of the page FHPt relative to the time to flip thesecond half of the page SHPt in order to extend the time that thecontent item is in-view before fully flipping to the next content item.In other embodiments, a change in time to flip Ft, time to pause Pt,time to retract Rt, time to flip to the first half of the page FHPt,time to flip to the second half of the page SHPt or any combination ofthem can indicate user interaction with or preference for certaincontent items.

Although not shown for simplicity, a change in a flip direction can alsoindicate intentional user interaction with certain content items or userpreference. For example, a user that does not intentionally interactwith or does not prefer content items may continue to flip through adirection, but may change the navigational direction of a flip whenintentionally interacts with or is presented with preferred contentitems. Alternatively, the user that intentionally interacts with contentitems or is presented with preferred content items may change directionsto engage in content items.

In one embodiment, attributes of flipping (e.g., time to flip Ft, timeto pause Pt, time to retract Rt, time to flip the first half of the pageFHPt, time to flip the second half of the page SHPt, or change innavigational direction of the flip) are analyzed for determining a userinteraction in response to a certain content item. The user'sintentional interaction with or preference for different content itemsby a user can be identified as one of “active slowdown or pausing inbetween flips,” “inconsistent pace of flipping,” “change in navigationaldirection” and “extended first half of page flip time”. “Active slowdownor pausing in between flips” indicates that the user slows down orpauses in between flips such that the time to flip Ft is less than thesum of the time to pause Pt and the time to retract Rt. “Inconsistentpace of flipping” indicates that Ft is inconsistent from flip to flip(or beyond the predetermined or statistically derived range). “Change innavigational direction” indicates that the user has flipped a page in adifferent direction to a previous flipping direction. “Extended firsthalf of page flip time” means that the user slows down the time to flipthe first half of the page FHPt in order to extend the time a contentitem is in-view such that FHPt is greater than the time to flip thesecond half of the page SHPt. “Consistent pace of flipping” indicatesthat the user flips through pages at a consistent pace such that thetime to flip Ft is the same as the sum of the time to pause Pt and thetime to retract Rt. “Consistent flipping” means that it is uncertain theuser interacts with or is encountered with preferred content items,whereas “active slowdown or pausing in between flips,” “inconsistentpace of flipping,” “change in navigational direction” and “extendedfirst half of page flip time” may indicate that the user hasintentionally interacted with content items or is presented withpreferred content items. By identifying user interactions associatedwith flips in response to encountering different content items,corresponding processes can be performed to analyze user interactionwith content items or user preference. Details of identifying userinteractions and performing corresponding processes are described belowwith respect to FIG. 5.

FIG. 5 is a block diagram of an example diagram of a content processingsystem 106. In one embodiment, the content processing system 106includes a user profile store 510, a content store 520, a search module530, a user preference determination module 540, a viewabilitydetermination module 550, and a page generation module 560. Thesecomponents operate together to generate content pages according toinformation describing attributes of flips and transmit the contentpages including content items that users may interact with or may preferto the client device 104 for presentation. In other embodiments, thecontent processing system 106 may include different, fewer, oradditional components.

The user profile store 510 stores user profiles. A user profile includesinformation about the user that was explicitly shared by the user andmay also include profile information inferred by the content processingsystem 106. In one embodiment, a user profile includes multiple datafields, each describing one or more attributes of the correspondinguser. Examples of information stored in a user profile includebiographic, demographic, and other types of descriptive information,such as gender, hobbies, preferences or interests, purchase behavior,location, data describing interactions by a corresponding user withcontent items presented by the content processing system 106, or othersuitable information. For example, the user profile store 510 stores,for a user, “consistent flipping” for content items related to‘fashion’, “active slowdown or pausing in between flips” for contentitems related to ‘finance’, “inconsistent pace of flipping” for contentitems related to ‘new presidential election’, and “change innavigational direction” for content items related to ‘Olympics’ and“extended first half of page flip time” for content items related to‘celebrity news’.

The content store 520 stores various types of digital content from thesource devices 102. Examples of content items stored by the contentstore 520 include a page post, a status update, a photograph, a video, alink, an article, a photograph, video data, an advertisement, sponsoredcontent and any other type of digital content. In addition, the contentstore 520 stores meta tags associated with content items. Each meta tagindicates a topic, a weighting for that topic based on how relevant thattopic is to the content item, whether that meta tag is associated withthe content item or a specific content element within the content item,and what the associated content item and content element are related to.

The search module 530 receives a search query from a user through theclient device 104 and retrieves content items from one or more sourcedevices 102 or from the content store 520 based on the search query. Forexample, content items having at least a portion of an attributematching at least a portion of a search query are retrieved from one ormore source devices 102. In one embodiment, the search module 530generates a section of the digital magazine including the content itemsidentified based on the search query.

The user preference determination module 540 receives informationdescribing attributes of flips from a client device 104, and determinesuser preference for content items. The information describing theattributes of the flips indicates a user behavior of flipping differentpages. Example information describing the attributes of the flipsinclude, content items included in one or more pages, flippingdirection, time to flip Ft, time to pause Pt, time to retract Rt, timeto flip the first half of page FHPt, etc.

In one embodiment, the user preference determination module 540determines a user preference for content items based on “userinteraction” with content as determined by flip-based navigation.Examples of “user interaction” include “active slowdown or pausing inbetween flips,” “inconsistent pace of flipping,” “change in navigationaldirection” and “extended first half of page flip time”. Based on theinformation describing the attributes of flips, the user preferencedetermination module 540 can identify “user interaction” of flips asfollowed.

-   -   “Active slowdown or pausing in between flips” indicates the user        slows down or pauses in between flips. This is based on the time        to pause for a period of time Pt and the time to retract a        finger into position to flip again for a period of time Rt. In        this scenario, a user is not simply navigating through the        browser or application, but rather intentionally slowing down or        briefly pausing between flips. There are two ways in which users        do so: the user can either pause after the flip with the user's        finger still touching the display such that Pt is greater than 0        or slow down the motion of retracting a finger to position for        the next flip such that Rt is greater than Ft or a combination        of both such that the sum of Pt and Rt is greater than Ft.    -   “Change in navigational direction” indicates that the user has        flipped a page in a different direction to a previous flipping        direction regardless of a pace of the flip or time in-view of        the content. This means that the user is intentionally changing        direction in order to interact with content, regardless of a        pace of flip or time in-view of the content.    -   “Inconsistent pace of flipping” indicates a user navigates        flipping with an inconsistent pace, either because the time to        flip Ft is inconsistent or the time interval in between flips        (Pt+Rt) is inconsistent. Such condition indicates intentional        user interaction with the content before flipping to the next        page.    -   “Extended first half of page flip time” means that the user        slows down the first half of the next flip FPHt relative to the        time to flip through the second half of the same page SPHt in        order to extend the time a content item is in-view. Such        conditions indicate intentional user interaction with the        content item before completing the flipping to the next page.

In one embodiment, after determining intentional “user interaction” offlips, the user preference determination module 540 performscorresponding processes to determine user preference for content itemsor topics. For example, responsive to determining that a flip isassociated with “active slowdown or pausing between flips,” the userpreference determination module 540 determines the probability ofserving a viewable impression based on user interaction with the contentitem. For another example, responsive to determining that there is aconsistent pattern of user interactions with particular content items orcontent topic, the user preference determination module 540 validatesthis pattern using statistical analysis in order to serve content itemsor content items associated within a specific content topic given thehigher preference for that topic by the user. According to differentanalysis performed based on the determined “user interaction” of flip,content items that the user is likely to interact with or content itemsthat the user prefers can be predicted. The predicted content items thatthe user is likely to prefer to view can be determined to be presentedin future pages. Various processes performed by the user preferencedetermination module 540 in response to “user interaction” aresummarized below.

-   -   Track intentional user interactions based on flipping        navigation.    -   Determine user preference for content items or topics based on        user interaction or statistical patterns of interaction with        content items.    -   Leverage user preference for content items to predict user        preference for other content items.    -   Present user with predicted content items.    -   Track user interactions with content items based on flipping        navigation.    -   Refine predictive models based on ongoing user interaction with        content items.

In one or more embodiments, the user preference determination module 540generates a user interest profile based on the user interactions oncontent items. A user interest profile indicates a list of topicspreferred by a user and the relative preference of those topics. In oneaspect, the user preference determination module 540 determines fromcontent items presented to a user, a subset of content items to whichthe user responded with intentional user interaction or a pattern ofuser interactions. For example, “active slowdown or pausing betweenflips,” “change in navigational direction,” or both are determined to bean intentional user interactions. The user preference determinationmodule 540 identifies meta tags associated with the determined subset ofcontent items, and generates an interest profile including a list oftopics indicated by the identified meta tags. For example, an interestprofile associated with a user is {“dog”, “pet”, “fashion”}, indicatingthat the user is interested in content items related to “dog,” “pet” and“fashion.” In another instance, those meta tags can be associated withcontent types (e.g., text, audio, images, video) such that interestprofiles can be created based on what type of content a userintentionally interacts with. In another instance, meta tags can beassociated with content elements (e.g., headlines, top copy, body text)such that interest profiles can be created based on what the userintentionally interacts with as the user browses content. The interestprofile may be stored by the user profile store 510. Various processesperformed by the user preference determination module 540 in response to“user interaction” are summarized below.

-   -   Track intentional user interactions based on flipping        navigation.    -   Determine user preference for content items based on user        interaction or statistical patterns of interactions with content        items.    -   Determine user preference for topics based on meta tags        associated with content items that users interacts with or        specific content types or content elements that the user        interacts with.    -   Create user interest profiles based on content items and topics        associated with content items or specific content types or        content elements that the user interacts with.    -   Leverage user interest profiles to predict user preference for        content items, content topics and content types.    -   Present user with predicted content items or content items        associated with predicted topics to users.    -   Track user interactions with content items based on flipping        navigation.    -   Refine predictive models based on ongoing user interaction with        content items and interactions with predicted content items.

In one or more embodiments, the viewability determination module 550determines viewability of a content item. The viewability determinationmodule 550 may determine viewability of the particular content itembased on the intentional user interaction of flipping. In oneembodiment, a content item is considered viewable if a userintentionally interacts with the content item regardless of the amountof time the content item is in-view. For example, the viewabilitydetermination module 550 can determine that an advertisement is viewableif the user responded with an intentional interaction with theadvertisement e.g., “active slowdown or pausing between flips”,“inconsistent page flipping”, “change in navigational direction,“extended first half of page flip time” etc. The viewabilitydetermination module 550 transmits information describing the determinedviewability of the content item to a source device 102 or a contentprovider of the content item. Viewability can be measured as binary(e.g., whether the user had an intentional user interaction with thecontent item or not) or as probability of being viewable (e.g., aprobability of the user having an intentional user interaction with thecontent item) and counted towards viewability as a weighted score orweighted impression count (e.g., weighted average number of viewableimpressions based on the number of impressions and the probability thateach impression was viewable) can be determined across multiple userinteractions. The information describing viewability of a content itemallows the content provider to gauge effectiveness of presentation ofthe content item.

In one embodiment, after determining the viewability of advertisingcontent based on an intentional user interaction with the content item,the viewability determination module 550 performs correspondingprocesses to determine viewability or the probability of viewabilityassociated with content items or content topics. For example, responsiveto determining that a flip is associated with “active slowdown orpausing between flips,” the viewability determination module 550determines the probability of serving a viewable advertising contentbased on user interaction with similar or related content items orcontent items associated with similar or related content topics. Theviewability determination module 550 validates this pattern usingstatistical analysis in order to serve content items that have a higherprobability of the intentional user interaction with that content item.According to different analysis performed based on the determined “userinteraction” of flip, content items or content topics that the user islikely to deem viewable are predicted. The predicted content items orcontent items associated with content topics that the user is likely todeem viewable can be determined and presented in future pages. Variousprocesses performed by the user preference determination module 540 inresponse to “user interaction” are summarized below.

-   -   Track user interactions with content items including sponsored        content as well as topics associated with content items based on        flipping navigation.    -   Predict intentional user interactions with content items and        content items associated with content topics.    -   Serve predicted content items including sponsored content and        advertisements based on predictions.    -   Track intentional user interactions with content including        sponsored content and advertisements based on flipping        navigation.    -   Calculate the statistical probability of the user interaction as        being a strong interaction.    -   Refine predictive models based on ongoing intentional user        interaction with content including sponsored content and        advertisements.

The page generation module 560 generates page information (e.g., pagetemplate) describing a layout of different content items to bepresented. In one aspect, the page generation module 560 generates pageinformation describing a page that includes the determined content itemsfrom the user preference determination module 540. The page generationmodule 560 retrieves content items from one or more source devices 102or from the content store 520, and generates a page including thecontent items. The page generation module 560 may associate the contentitem with a section configured to present a specific type of contentitem or to present content items having one or more specifiedcharacteristics. The page information can be transmitted to the clientdevice 104 for presentation.

In one embodiment, the page generation module 560 generates the pageincluding sponsored content and advertisements determined according touser interaction with or preference for content items. The pagegeneration module 560 facilitates source devices 102 or other vendors topresent advertisements to a user of the client device 104. Anadvertisement of a product or a service may be arranged in a page or ina transition animation between two flips. In one approach, the pagegeneration module 560 analyzes user interaction with or preferences forcontent items being viewed by a user of the client device 104,determines a product or a service that the user is likely to interactwith or prefer, for example, based on the interest profile of the user,and includes the advertisement corresponding to the determined productor service in the page for transmission to the client device 104. Inanother approach, the page generation module 560 identifies other usershaving similar user profiles (e.g., age, gender, interests, geographiclocation, purchase behavior etc.) with the user, analyzes userpreferences or interest profiles of the other users to determine anadvertisement related to a content item that the user may interact withor prefer, and includes the identified advertisement in the page fortransmission to the client device 104.

In some embodiments, the page generation module 560 determinesadvertisements or sponsored content that is viewable or has the highestprobability of being viewable based on “user interaction”. In thisapplication, flip navigation is measured to determine intentional userinteraction with advertisements or sponsored content to qualify them asviewable. Not only can these metrics be used to determine whether animpression is viewable or not under this standard, but they can be usedto predict the best time and place to serve advertisements and sponsoredcontent (that is to say, when advertising and sponsored contentimpressions has the highest probability of qualifying under the userinteraction clause as viewable). Predictive analytics could be used atindividual or group (by demographics, by interest, etc.) levels tomaximize the chance that impressions are viewable. For example, a set ofusers may have a higher probability of interacting with advertisingrelated to “design”, or another set of users may have a higherprobability of interacting with advertising when reading “design”content.

FIG. 6 is a block diagram of a client device 104 according to oneembodiment. In the embodiment illustrated in FIG. 6, the client device104 includes a presentation module 610, a flip detection module 620, anda flip operation report module 630. These components operate together topresent content items in digital magazine pages to a user of the clientdevice 104. In other embodiments, the client device 104 may includedifferent, fewer, or additional components.

The presentation module 610 receives the page information describing apage including content items from the content processing system 106(e.g., page generation module 560), and renders a visual representationof the page. In one example, the presentation module 610 displays thepage on a touch display device.

The flip detection module 620 receives an input signal obtained from thetouch display device, and determines an input operation associated withthe input signal. The flip detection module 620 analyzes series orparallel input signals received at the input device to determine thedetails of the input operation. Specifically, the flip detection module620 determines a type of input operation (e.g., slide operation, dragoperation, etc.) and attributes associated with the determined inputoperation. For example, in response to a user gesture of flipping a pageby sliding a finger from one position to another position on a touchdisplay device, the flip detection module 620 determines a direction,time, a velocity, etc. of the flip.

The flip operation report module 630 generates information describingattributes of flips, and transmits the information to the contentprocessing system 106 (e.g., user preference determination module 540).The information describing the attributes of flips may be used by theuser preference determination module 540 for determining content itemsthat may be of interests to the user, as described above with respect toFIG. 5.

FIG. 7 is an example flow chart of determining attributes of a flip. Thesteps in FIG. 7 may be performed by the client device 104. In otherembodiments, some or all of the steps may be performed by otherentities. In addition, some embodiments may perform the steps inparallel, perform the steps in different orders, or perform differentsteps.

The client device 104 detects a user operation to flip a page, andexecutes 710 the user operation. The client device 104 determines adirection of the flip, and displays 730 a page to provide a visualfeedback to the user, in response to the user operation. For example,the client device 104 displays a transition animation according to aposition of a finger while executing the flip operation. After the flipis completed, the client device 104 displays the next page.

The client device 104 determines 740 a time to flip Ft, a time to pausePt, a time to retract, time to flip the first half of the page FHPt, andtime to flip the second half of the page SHPt. In one embodiment, theclient device 104 determines that a time period between timecorresponding to a start of a flip of a page and time corresponding toan end of the flip is the time to flip Ft. In addition, the clientdevice 104 may determine that a time period between time correspondingto the end of the flipping the page with the user's finger stilltouching the display and time corresponding to start of retracting forflipping the next page is the time to pause Pt. In one aspect, the timeto pause Pt is obtained by determining a duration of a finger in touchwith a touch screen device at a same location after the flip iscompleted, and before the finger is lifted from the touch screen device.Moreover, the client device 104 may determine that a time period duringwhich the user retracts a finger back into a position to initiate a nextflip after the finger is lifted (or after time to pause Pt) is the timeto retract Rt.

Based on the direction of the flip as well as timing information (e.g.,Ft. Pt, Rt, FHPt, and SHPt), user interaction with or preference forcontent items can be determined.

FIG. 8 is an example flow chart of determining a user interaction basedon the attributes of the flip. The steps in FIG. 8 may be performed bythe content processing system 106. In other embodiments, some or all ofthe steps may be performed by other entities. In addition, someembodiments may perform the steps in parallel, perform the steps indifferent orders, or perform different steps.

The content processing system 106 receives 810 information describingattributes of a flip from a client device 104. Examples of attributes ofa flip include a direction of a flip, time to flip Ft, time to pause Pt,time to retract, Rt, time to flip the first half of the page FHPt, andtime to flip the second half of the page SHPt, etc.

The content processing system 106 determines 820 whether a direction ofthe flip is consistent with a direction of a previous flip. Responsiveto determining that the direction of the flip is inconsistent, thecontent processing system 106 determines 830 that the user interactionis “change in navigational direction.”

Responsive to determining that the direction of the flip is consistent,the content processing system 106 determines 835 whether a pace of theflip is consistent. For example, responsive to determining that time toflip Ft, time to pause Pt, time to retract Rt, time to flip the firsthalf of the page FHPt, and time to flip the second half of the page SHPtare each within a corresponding predetermined range, the contentprocessing system 106 determines that the pace of the flip isconsistent. Responsive to determining that the pace of the flip isinconsistent, the content processing system 106 determines 840 that theuser operation is “inconsistent pacing of flipping.”

Responsive to determining that the pace of the flip is consistent, thecontent processing system 106 compares 850 time to flip Ft with a sum oftime to pause Pt and time to retract Rt. Generally, time to flip Ft isequal to the sum of the time to pause Pt and time to retract Rt, whenthe user flips through pages when it is uncertain whether the userencounters preferred. Hence, the content processing system 106determines 860 that the user operation is “Active Slowdown or PausingBetween Flips,” responsive to determining that the sum of time to pausePt and the time to retract Rt is larger than time to flip Ft. Responsiveto determining that the time to flip Ft is equal to or larger than thesum of the time to pause Pt and the time to retract Rt, the contentprocessing system 106 compares 870 FHPt with SHPt. Responsive todetermining that FHPT is larger than SHPt, the content processing system106 determines 880 that the user operation is “Active Slowdown orPausing Within First Half of the Flip.” Responsive to determining thatthe FHPT is equal to or less than SHPt, the content processing system106 determines 890 that the user operation is “consistently flipping” orflipping in a way that does not demonstrate intentional user interactionor preference for content.

According to the defined user interaction with content items presented,user preference for content items can be determined. In one aspect,“change in navigational direction,” “inconsistent pacing of flipping,”“active slow down or pausing,” “extend first half of page flip time”indicate the user encountered content items preferred by users. Asdescribed above with respect to FIG. 5, corresponding processes (e.g.,statistical analysis) can be performed for each user interaction todetermine user preference for content items and to predict preferredcontent items to the user.

Summary

The foregoing description of the embodiments of the invention has beenpresented for the purpose of illustration; it is not intended to beexhaustive or to limit the invention to the precise forms disclosed.Persons skilled in the relevant art can appreciate that manymodifications and variations are possible in light of the abovedisclosure.

Some portions of this description describe the embodiments of theinvention in terms of algorithms and symbolic representations ofoperations on information. These algorithmic descriptions andrepresentations are commonly used by those skilled in the dataprocessing arts to convey the substance of their work effectively toothers skilled in the art. These operations, while describedfunctionally, computationally, or logically, are understood to beimplemented by computer programs or equivalent electrical circuits,microcode, or the like. Furthermore, it has also proven convenient attimes, to refer to these arrangements of operations as modules, withoutloss of generality. The described operations and their associatedmodules may be embodied in software, firmware, hardware, or anycombinations thereof.

Any of the steps, operations, or processes described herein may beperformed or implemented with one or more hardware or software modules,alone or in combination with other devices. In one embodiment, asoftware module is implemented with a computer program productcomprising a computer readable medium (e.g., non-transitory computerreadable medium) containing computer program code, which can be executedby a computer processor for performing any or all of the steps,operations, or processes described.

Embodiments of the invention may also relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, and/or it may comprise ageneral-purpose computing device selectively activated or reconfiguredby a computer program stored in the computer. Such a computer programmay be stored in a tangible computer readable storage medium or any typeof media suitable for storing electronic instructions, and coupled to acomputer system bus. Furthermore, any computing systems referred to inthe specification may include a single processor or may be architecturesemploying multiple processor designs for increased computing capability.

Embodiments of the invention may also relate to a computer data signalembodied in a carrier wave, where the computer data signal includes anyembodiment of a computer program product or other data combinationdescribed herein. The computer data signal is a product that ispresented in a tangible medium or carrier wave and modulated orotherwise encoded in the carrier wave, which is tangible, andtransmitted according to any suitable transmission method.

Finally, the language used in the specification has been principallyselected for readability and instructional purposes, and it may not havebeen selected to delineate or circumscribe the inventive subject matter.It is therefore intended that the scope of the invention be limited notby this detailed description, but rather by any claims that issue on anapplication based hereon.

What is claimed is:
 1. A computer-implemented method performed by acomputer system for presenting content items in a digital magazine, themethod comprising: obtaining information describing attributes offlipping a page of the digital magazine by a user, the page including acontent item, the attributes of the flipping the page selected from agroup consisting of: a direction of the flipping, a time to perform theflipping, a time to flip a half of the page, a time to pause, and a timeto retract for a next flip, and any combination thereof; determining asum of (i) the time to pause and (ii) the time to retract; determining auser interaction with the content item by: maintaining a predeterminedrange for each of the time to flip, the time to pause, the time toretract and the determined sum of (i) the time to pause and (ii) thetime to retract, determining the user interaction is a consistent paceof flipping in response to each of the time to flip, the time to pause,the time to retract and the determined sum of (i) the time to pause and(ii) the time to retract being within their corresponding predeterminedrange, and determining the user interaction is an inconsistent pace offlipping in response to at least one of the time to flip, the time topause, the time to retract and the determined sum of (i) the time topause and (ii) the time to retract being outside their correspondingpredetermined range; generating information describing a viewability ofthe content item, the viewability being an indication of whether thecontent item is viewable determined based on the user interaction; andtransmitting the information describing the viewability to a contentprovider of the content item.
 2. The method of claim 1, whereindetermining the user interaction with the content item furthercomprises: responsive to the direction of the flipping being changedfrom a direction of previous flipping, determining that the userinteraction is a change in a navigation direction.
 3. The method ofclaim 1, wherein determining the user interaction with the content itemfurther comprises: responsive to determining the time to flip equals thesum of (i) the time to pause and (ii) the time to retract, determiningthat the user interaction is a consistent pacing of flipping.
 4. Themethod of claim 1, wherein determining the user interaction with thecontent item further comprises: responsive to determining that the timeto flip does not equal (i) the sum of the time to pause and (ii) thetime to retract, determining that the user interaction is aninconsistent pacing of flipping.
 5. The method of claim 1, whereindetermining the user interaction with the content item furthercomprises: responsive to determining that the time to flip is less than(i) the sum of the time to pause and (ii) the time to retract,determining that more time is spent on the page relative to time spentflipping to the page.
 6. The method of claim 1, wherein determining theuser interaction with the content item further comprises: responsive todetermining that a first time to flip a first half of the page is lessthan a second time to flip a second half of the page, determining thatmore time is spent with the second half of the page in view.
 7. Anon-transitory computer-readable storage medium storing executablecomputer program instructions for presenting content items in a digitalmagazine, the computer program instructions when executed by a computerprocessor cause the computer processor to: obtain information describingattributes of flipping of a page of the digital magazine by a user, thepage including a content item, the attributes of the flipping of thepage selected from a group consisting of: a direction of the flipping, atime to perform the flipping, a time to flip a half of the page, a timeto pause, and a time to retract for a next flip, and any combinationthereof; determine a sum of (i) the time to pause and (ii) the time toretract; determine a user interaction with the content item by: maintaina predetermined range for each of the time to flip, the time to pause,the time to retract, and the determined sum of (i) the time to pause and(ii) the time to retract, determine the user interaction is a consistentpace of flipping in response to each of the time to flip, the time topause, the time to retract and the determined sum of (i) the time topause and (ii) the time to retract being within their correspondingpredetermined range, and determine the user interaction is aninconsistent pace of flipping in response to at least one of the time toflip, the time to pause, the time to retract, and the determined sum of(i) the time to pause and (ii) the time to retract being outside theircorresponding predetermined range; generate information describing aviewability of the content item, the viewability being an indication ofwhether the content item is viewable determined based on the userinteraction; and transmit the information describing the viewability toa content provider of the content item.
 8. The non-transitorycomputer-readable storage medium of claim 7, wherein determine the userinteraction with the content item further comprises: responsive to thedirection of the flipping being changed from a direction of previousflipping, determine that the user interaction is a change in anavigation direction.
 9. The non-transitory computer-readable storagemedium of claim 7, wherein determine the user interaction with thecontent item further comprises: responsive to determining that the timeto flip equals the sum of (i) the time to pause and (ii) the time toretract, determine that the user interaction is a consistent pacing offlipping.
 10. The non-transitory computer-readable storage medium ofclaim 7, wherein determine the user interaction with the content itemfurther comprises: responsive to determining that the time to flip doesnot equal (i) the sum of the time to pause and (ii) the time to retract,determine that the user interaction is an inconsistent pacing offlipping.
 11. The non-transitory computer-readable storage medium ofclaim 7, wherein determine the user interaction with the content itemfurther comprises: responsive to determining that the time to flip isless than (i) the sum of the time to pause and (ii) the time to retract,determine that more time is spent on the page relative to time spentflipping to the page.
 12. The non-transitory computer-readable storagemedium of claim 7, wherein determine the user interaction with thecontent item further comprises: responsive to determining that a firsttime to flip a first half of the page is less than a second time to flipa second half of the page, determine that more time is spent with thesecond half of the page in view.
 13. A computer-implemented methodperformed by a computer system for presenting content items in a digitalmagazine, the method comprising: obtaining information describingattributes of flipping a page of the digital magazine by a first user,the page including one or more content items, the attributes of theflipping of the page selected from a group consisting of: a direction ofthe flipping, a time to perform the flipping, a time to flip a half ofthe page, a time to pause, and a time to retract for a next flip, andany combination thereof; determining a sum of (i) the time to pause and(ii) the time to retract; determining viewability of content items basedon: maintaining a predetermined range for each of the time to flip, thetime to pause, the time to retract and the determined sum of (i) thetime to pause and (ii) the time to retract, determining the viewabilityof content items is a consistent pace of flipping in response to each ofthe time to flip, the time to pause, the time to retract and thedetermined sum of (i) the time to pause and (ii) the time to retractbeing within their corresponding predetermined range, and determiningthe viewability of content items is an inconsistent pace of flipping inresponse to at least one of the time to flip, the time to pause, thetime to retract and the determined sum of (i) the time to pause and (ii)the time to retract being outside their corresponding predeterminedrange; predicting viewable content items by a second user based on theviewability of the content items or topics associated with contentitems; and generating page information describing another page includingone or more of the predicted content items, the other page presentedaccording to the page information.
 14. The computer-implemented methodof claim 13, wherein the first user is different from the second user.